package com.Mapper.SecondaryMapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.param.Engineer.*;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.jdbc.SQL;

import java.util.HashSet;
import java.util.List;

@Mapper
public interface SecondaryMapper  extends BaseMapper {


  HashSet<ProjectVersions> selectVersion();
  HashSet<EngineeringBaseInfo> selectEngineeringBaseInfo();

  HashSet<ExtractBaseInfo> selectExtractAll();

  void insertExtractList(List<ExtractBaseInfo> noPersonVersionList);

  void updateExtractList(ExtractBaseInfo extractBaseInfo);

  List<EngineeringBaseInfo> getCityAndProJNumByEngBaseInfo();

  List<ExtractEngineeringVersions> getEngineeringVersions();

  HashSet<ExtractEngineeringVersions> getExtractEngineeringVersions();

  void updateExtractVersionList(ExtractEngineeringVersions updateList);

  void addExtractVersionList(List<ExtractEngineeringVersions> matchingVersions);

  List<String> selectExtractVersionId();

  List<ProjectVersions> getCityAndProJNumByVersion();

  HashSet<EngineeringDirectors> getAllProjectDirectors();

  HashSet<ProjectVersions> getVersion();

  void addExtractDirectorList(List<EngineeringDirectors> subList);

  void updateDirectors(EngineeringDirectors copyDirector);

  HashSet<EngineeringDirectors>  getExtractDirectors();

  List<String> getIdByBaseInfo();

  List<EngineeringPicInfo> getPicInfo();

  void addExtractPinInfo(List<EngineeringPicInfo> collectList);

  HashSet<EngineeringPicInfo> getExtractPicInfo();

  void updatePicInfo(EngineeringPicInfo copy);

  List<EngineeringLinkInfo> getEngineeringLinkInfo();

  List<EngineeringLinkInfo>  getExtractLinkInfo();

  void updateLinkInfo(EngineeringLinkInfo info);

  void addExtractLinkInfo(List<EngineeringLinkInfo> subList);


  HashSet<ExtractBaseInfo> getCityAndNumByExtractBaseInfo();

  HashSet<Object> SQLBaseInfo();

  HashSet<Object> SQLExtBaseInfo();

  List<ExtractEngineeringVersions> SQLVersion();

  List<ExtractEngineeringVersions> SQLExtVersion();

  List<ExtractPicInfo> SQLPic();

  List<ExtractPicInfo> SQLExtPic();

  HashSet<EngineeringDirectors> SQLExtDirec();
  List<EngineeringDirectors> SQLExtDirecList();

  HashSet<EngineeringDirectors> SQLDirec();
  List<EngineeringDirectors> SQLDirecList();

  HashSet<String> IDSQLDirec();

  HashSet<String> IDSQLExtDirec();

  HashSet<String> SQLVerSionItemID();

  HashSet<String> SQLVerSionItemIDAPP();

  HashSet<EngineeringBaseInfo> getCityandNumByEngineeringBaseInfo();

  void updateEngineer(EngineeringBaseInfo person);

  void insertEngineerBaseInfo(List<ProjectVersions> subList);

  void deleteEngineerById(String versionItemID);
}
